package org.cttic.visualization.visualization.common;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * 2.6.2	辅助计费分时段统计查询
 * 请求体
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class AssistChargingRequest implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 省编码
     * 不填写的情况下，按默认全国查
     * 按通行省查询时，必填，如果存在查询多个省，使用|进行拼接
     */
    private String provinceId;


    /**
     * 路段ID
     * 如果存在多个，使用|进行拼接
     */
    private String roadSectionId;


    /**
     * 识别点统计维度
     * 0: ETC门架(路段和省界门架合并统计)+收费站
     * 1: 普通路段ETC门架+省界ETC门架+收费站
     * 当前第一阶段大屏，默认传值0
     */
    @NotNull(message = "pointType不能为空")
    private String pointType;

    /**
     * queryType
     * 0:按时间点查询
     * 1:按时间段查询
     * 当前第一阶段省级大屏，会按时间段查询
     */
    @NotNull(message = "queryType不能为空")
    private String queryType;


    /**
     * 查询值1
     * 如果“按时间点查询”：那么，该值填写车辆通行时间点，格式为“YYYY-MM-DDTHH:mm:ss”；
     * 如果“按时间段查询”：那么，该值填写查询的开始时间点，格式为“YYYY-MM-DDTHH:mm:ss”；
     */
    @NotNull(message = "queryValue1不能为空")
    private String queryValue1;


    /**
     * 查询值2
     * 如果“按时间段查询”：那么，该值填写查询的结束时间点，格式为“YYYY-MM-DDTHH:mm:ss”；
     */
    private String queryValue2;
}
